/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package GlobalObservingSystem.Mundo.BaseDatos;

import GlobalObservingSystem.Mundo.Coordenada;
import java.util.ArrayList;
import java.util.Date;

/**
 *
 * @author js.rojas, d.arteaga
 */
public class MedidasConsultaBD
{
    private int numeroMedidas;

    private ArrayList<MedidaBD> medidas;

    public MedidasConsultaBD ( )
    {
        numeroMedidas = 0;
        medidas = new ArrayList<MedidaBD>();
    }

    public MedidasConsultaBD ( ArrayList<MedidaBD> m )
    {
        numeroMedidas = m.size();
        medidas = m;
    }

    public void agregarMedida( MedidaBD m )
    {
        medidas.add(m);
        numeroMedidas++;
    }

    public int darNumeroMedidas()
    {
        return numeroMedidas;
    }

    public ArrayList<MedidaBD> darMedidas()
    {
        return medidas;
    }

    public MedidaBD darMedidaLatitud( Coordenada latitud )
    {
        for( int i = 0; i < medidas.size( ); i++ )
        {
            MedidaBD d = ( MedidaBD  )medidas.get( i );
            if( d.getLatitud().equals(latitud))
                return d;
        }
        return null;
    }
     public MedidaBD darMedidaLongitud( Coordenada longitud )
    {
        for( int i = 0; i < medidas.size( ); i++ )
        {
            MedidaBD d = ( MedidaBD  )medidas.get( i );
            if( d.getLongitud().equals(longitud))
                return d;
        }
        return null;
    }

     public MedidaBD darMedidaAltitud( int altitud )
    {
        for( int i = 0; i < medidas.size( ); i++ )
        {
            MedidaBD d = ( MedidaBD  )medidas.get( i );
            if( d.getAltitud() == altitud)
                return d;
        }
        return null;
    }

     public MedidaBD darMedidaMedicion( int medicion )
    {
        for( int i = 0; i < medidas.size( ); i++ )
        {
            MedidaBD d = ( MedidaBD  )medidas.get( i );
            if( d.getTipoMedicion() == medicion)
                return d;
        }
        return null;
    }

     public MedidaBD darMedidaDate( Date date )
    {
        for( int i = 0; i < medidas.size( ); i++ )
        {
            MedidaBD d = ( MedidaBD  )medidas.get( i );
            if( d.getFecha().equals(date))
                return d;
        }
        return null;
    }

     public MedidaBD darMedidaValor( int valor )
    {
        for( int i = 0; i < medidas.size( ); i++ )
        {
            MedidaBD d = ( MedidaBD  )medidas.get( i );
            if( d.getValor() == valor)
                return d;
        }
        return null;
    }

}

